package com.ziyueyuwen.xiniao.bean.message;

import com.ziyueyuwen.xiniao.bean.ZyClassLessonInfo;
import com.ziyueyuwen.xiniao.bean.ZyLessonMessageTask;
import com.ziyueyuwen.xiniao.enums.MessageTypeEnum;
import org.apache.commons.lang3.time.DateUtils;

import java.util.Date;
/**
 * @author wancheng  on 2019/1/21.
 */
public class LessonNode {

    /**
     * 课前预习 连续上课（开课前20小时）；每周一次（开课前2天）
     */
    private ZyLessonMessageTask preview;
    /**
     * 推送本节课上课提醒  开课前1小时
     */
    private ZyLessonMessageTask oneHour;
    /**
     * 推送本节课上课提醒 开课前15分钟
     */
    private ZyLessonMessageTask fifteenMinute;

    private ZyClassLessonInfo lesson;
    /**
     * 推送本节课作业 课程结束10分钟，，标注截止日期是下节课上课时间
     */
    private ZyLessonMessageTask homework;
    /**
     * 推送本节课课程总结  课程结束10分钟
     */
    private ZyLessonMessageTask summarize;
    /**
     * 推送本节课回放链接  课程结束后30分钟
     */
    private ZyLessonMessageTask replay;
    /**
     * 推送未提交作业提醒 本讲作业推送48小时（只给未提交作业学员推送），标注截止日期是下节课上课时间
     */
    private ZyLessonMessageTask unCommit;

    private ZyLessonMessageTask expansion;

    private Boolean hasPrevious = false;

    private LessonNode previous = null;



    public LessonNode() {
    }

    public ZyLessonMessageTask getPreview() {
        return preview;
    }

    public LessonNode setPreview(ZyLessonMessageTask preview) {
        this.preview = preview;
        return this;
    }

    public ZyLessonMessageTask getOneHour() {
        return oneHour;
    }

    public LessonNode setOneHour(ZyLessonMessageTask oneHour) {
        this.oneHour = oneHour;
        return this;
    }

    public ZyLessonMessageTask getFifteenMinute() {
        return fifteenMinute;
    }

    public LessonNode setFifteenMinute(ZyLessonMessageTask fifteenMinute) {
        this.fifteenMinute = fifteenMinute;
        return this;
    }

    public ZyClassLessonInfo getLesson() {
        return lesson;
    }

    public LessonNode setLesson(ZyClassLessonInfo lesson) {
        this.lesson = lesson;
        return this;
    }

    public ZyLessonMessageTask getHomework() {
        return homework;
    }

    public LessonNode setHomework(ZyLessonMessageTask homework) {
        this.homework = homework;
        return this;
    }

    public ZyLessonMessageTask getSummarize() {
        return summarize;
    }

    public LessonNode setSummarize(ZyLessonMessageTask summarize) {
        this.summarize = summarize;
        return this;
    }

    public ZyLessonMessageTask getReplay() {
        return replay;
    }

    public LessonNode setReplay(ZyLessonMessageTask replay) {
        this.replay = replay;
        return this;
    }

    public ZyLessonMessageTask getUnCommit() {
        return unCommit;
    }

    public LessonNode setUnCommit(ZyLessonMessageTask unCommit) {
        this.unCommit = unCommit;
        return this;
    }

    public ZyLessonMessageTask getExpansion() {
        return expansion;
    }

    public LessonNode setExpansion(ZyLessonMessageTask expansion) {
        this.expansion = expansion;
        return this;
    }

    public Boolean getHasPrevious() {
        return hasPrevious;
    }

    public LessonNode setHasPrevious(Boolean hasPrevious) {
        this.hasPrevious = hasPrevious;
        return this;
    }

    public LessonNode getPrevious() {
        return previous;
    }

    public LessonNode setPrevious(LessonNode previous) {
        this.previous = previous;
        return this;
    }
}
